package io.mybatis.example.springboot.model;

import io.mybatis.provider.Entity;
import org.apache.ibatis.type.JdbcType;

import lombok.Getter;
import lombok.Setter;


/**
 * QRTZ_TRIGGERS - 触发器详细信息表
 *
 * @author mkj
 */
@Getter
@Setter
@Entity.Table("QRTZ_TRIGGERS" remark = "触发器详细信息表", autoResultMap = true)
public class QrtzTriggersDO {
  @Entity.Column(value = "sched_name", id = true, remark = "调度名称", updatable = false, insertable = false)
  private String schedName;

  @Entity.Column(value = "trigger_name", id = true, remark = "触发器的名字", updatable = false, insertable = false)
  private String triggerName;

  @Entity.Column(value = "trigger_group", id = true, remark = "触发器所属组的名字", updatable = false, insertable = false)
  private String triggerGroup;

  @Entity.Column(value = "job_name", remark = "qrtz_job_details表job_name的外键")
  private String jobName;

  @Entity.Column(value = "job_group", remark = "qrtz_job_details表job_group的外键")
  private String jobGroup;

  @Entity.Column(value = "description", remark = "相关介绍")
  private String description;

  @Entity.Column(value = "next_fire_time", remark = "上一次触发时间（毫秒）")
  private Long nextFireTime;

  @Entity.Column(value = "prev_fire_time", remark = "下一次触发时间（默认为-1表示不触发）")
  private Long prevFireTime;

  @Entity.Column(value = "priority", remark = "优先级")
  private Integer priority;

  @Entity.Column(value = "trigger_state", remark = "触发器状态")
  private String triggerState;

  @Entity.Column(value = "trigger_type", remark = "触发器的类型")
  private String triggerType;

  @Entity.Column(value = "start_time", remark = "开始时间")
  private Long startTime;

  @Entity.Column(value = "end_time", remark = "结束时间")
  private Long endTime;

  @Entity.Column(value = "calendar_name", remark = "日程表名称")
  private String calendarName;

  @Entity.Column(value = "misfire_instr", remark = "补偿执行的策略")
  private Short misfireInstr;

  @Entity.Column(value = "job_data", remark = "存放持久化job对象")
  private byte[] jobData;

}
